package com.zhuss.core.db.dao.ext;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.zhuss.bean.bo.core.company.SearchDeptBo;
import com.zhuss.bean.unit.core.company.DeptBean;
import com.zhuss.bean.vo.core.company.DetailDeptVo;
import com.zhuss.bean.vo.core.company.ListDeptVo;
import com.zhuss.core.db.dao.gen.DeptMapper;
import com.zhuss.core.db.entity.Dept;

@Mapper
public interface DeptDao extends DeptMapper {
	
	void create(Dept record);
	
	void delete(Dept record);
	
	List<Dept> listAll(@Param("companyId") Long companyId);
	
	List<DeptBean> listById(@Param("deptIdList") List<Long> deptIdList);

	List<ListDeptVo> list(SearchDeptBo bo);

	Integer countList(SearchDeptBo bo);

	DetailDeptVo detail(@Param("deptId") Long deptId);
	
	List<Dept> listByName(@Param("companyId") Long companyId, @Param("name") String name);

    
}